IViewFor interface¶
Defined in
Namespace: ReactiveUI
Assembly: ReactiveUI.Core.dll
Full name: ReactiveUI.IViewFor<T>
Modifiers: public abstract
Summary¶
Implement this interface on views to participate in ReactiveUI routing, activation, and binding.
Applies to
net10.0, net10.0-maccatalyst26.0, net10.0-desktop1.0, net10.0-browserwasm1.0, net10.0-tvos26.0, net10.0-windows10.0.19041, net10.0-macos26.0, net10.0-ios26.0, net10.0-android36.0, net9.0, net9.0-tvos18.0, net9.0-macos15.0, net9.0-maccatalyst18.0, net9.0-windows10.0.19041, net9.0-ios18.0, net9.0-desktop1.0, net8.0, net8.0-windows10.0.19041, net8.0-ios18.0, net8.0-maccatalyst18.0, net8.0-macos15.0, net8.0-tvos18.0, net8.0-ios17.5, net8.0-maccatalyst17.5, net8.0-macos14.5, netstandard2.1, net481, net462, net471
Class hierarchy
classDiagram
class IViewFor~T~
class IViewFor {
<>
}
IViewFor <|.. IViewFor~T~
class IActivatableView {
<>
}
IActivatableView <|.. IViewFor~T~
Implements: IViewFor, IActivatableView
Remarks¶
Views typically expose ViewModel as a bindable property (dependency property in XAML, BindableProperty
in .NET MAUI, etc.). Implementations should also handle activation by calling WhenActivated inside the view to
manage subscriptions.
Examples¶
<![CDATA[
public partial class LoginView : ReactiveUserControl<LoginViewModel>
{
public LoginView()
{
InitializeComponent();
this.WhenActivated(disposables =>
this.Bind(ViewModel, vm => vm.UserName, v => v.UserNameTextBox.Text)
.DisposeWith(disposables));
}
}
]]>
Properties¶
| Name | Summary |
|---|---|
| ViewModel | Gets or sets the strongly typed view model. Override this property to integrate with the platform's binding system. |